package com.itheima.practice;

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class TreeSetPractice {
    public static void main(String[] args) {

        /**
         * 1.创建一个TreeSet集合,存储Person对象，并且按照年龄进行排序，年龄相同按照姓名排序
         * 2.Scanner对象，监听键盘录入
         * 3.开启for 循环，让用户录入3个学生信息
         * 4.每一个循环中
         * ---1.提示用户输入学生信息
         * ---2.创建Person对象，把键盘录入的数据封装到Person对象中
         * ---3.把Person对象添加到TreeSet集合中
         * 5.遍历TreeSet集合，打印学生信息
         */
        //1.创建TreeSet集合
        TreeSet<Person> ts = new TreeSet<>(new Comparator<Person>() {
            @Override
            public int compare(Person o1, Person o2) {
                    return (int)(o2.getMath() - o1.getMath()+o2.getChinese()-o1.getChinese()+o2.getEnglish()-o1.getEnglish());
            }
        });
        Scanner  scanner = new Scanner(System.in);

        for (int i = 0; i < 3; i++) {
            //2.提示用户输入学生信息
            System.out.println("请输入第"+(i+1)+"学生信息：");
            System.out.print("姓名：");
            //录入的时候不能输入空格，否则会报错
            String name = scanner.next();
            System.out.print("语文成绩：");
            double chinese = scanner.nextDouble();
            System.out.print("数学成绩：");
            double math = scanner.nextDouble();
            System.out.print("英语成绩：");
            double english = scanner.nextDouble();
            //3.创建Person对象
            Person p = new Person(name, chinese, math, english);
            //4.把Person对象添加到TreeSet集合中
            ts.add(p);
        }
        for (Person p : ts) {
            System.out.println(p);
        }

    }
}
